home *** CD-ROM | disk | FTP | other *** search
-
-
-
- CO User Commands CO
-
-
-
- NNAAMMEE
- co - check out RCS revisions
-
- SSYYNNOOPPSSIISS
- ccoo [ options ] file ...
-
- DDEESSCCRRIIPPTTIIOONN
- _C_o retrieves revisions from RCS files. Each file name end-
- ing in `,v' is taken to be an RCS file. All other files are
- assumed to be working files. _C_o retrieves a revision from
- each RCS file and stores it into the corresponding working
- file.
-
- Pairs of RCS files and working files may be specified in 3
- ways (see also the example section).
-
- 1) Both the RCS file and the working file are given. The RCS
- file name is of the form _p_a_t_h_1/_w_o_r_k_f_i_l_e,v and the working
- file name is of the form _p_a_t_h_2/_w_o_r_k_f_i_l_e, where _p_a_t_h_1/ and
- _p_a_t_h_2/ are (possibly different or empty) paths and _w_o_r_k_f_i_l_e
- is a file name.
-
- 2) Only the RCS file is given. Then the working file is
- created in the current directory and its name is derived
- from the name of the RCS file by removing _p_a_t_h_1/ and the
- suffix `,v'.
-
- 3) Only the working file is given. Then the name of the RCS
- file is derived from the name of the working file by remov-
- ing _p_a_t_h_2/ and appending the suffix `,v'.
-
- If the RCS file is omitted or specified without a path, then
- _c_o looks for the RCS file first in the directory ./RCS and
- then in the current directory.
-
- Revisions of an RCS file may be checked out locked or
- unlocked. Locking a revision prevents overlapping updates. A
- revision checked out for reading or processing (e.g., com-
- piling) need not be locked. A revision checked out for edit-
- ing and later checkin must normally be locked. Locking a
- revision currently locked by another user fails. (A lock may
- be broken with the _r_c_s (1) command.) _C_o with locking
- requires the caller to be on the access list of the RCS
- file, unless he is the owner of the file or the superuser,
- or the access list is empty. _C_o without locking is not sub-
- ject to accesslist restrictions.
-
- A revision is selected by number, checkin date/time, author,
- or state. If none of these options are specified, the latest
- revision on the trunk is retrieved. When the options are
- applied in combination, the latest revision that satisfies
- all of them is retrieved. The options for date/time,
-
-
-
- Purdue University 6/29/83 1
-
-
-
-
-
-
- CO User Commands CO
-
-
-
- author, and state retrieve a revision on the _s_e_l_e_c_t_e_d
- _b_r_a_n_c_h. The selected branch is either derived from the revi-
- sion number (if given), or is the highest branch on the
- trunk. A revision number may be attached to one of the
- options --ll, --pp, --qq, or --rr.
-
- A _c_o command applied to an RCS file with no revisions
- creates a zero-length file. _C_o always performs keyword sub-
- stitution (see below).
-
- --ll[_r_e_v] locks the checked out revision for the caller.
- If omitted, the checked out revision is not
- locked. See option --rr for handling of the revi-
- sion number _r_e_v.
-
- --pp[_r_e_v] prints the retrieved revision on the std. output
- rather than storing it in the working file. This
- option is useful when _c_o is part of a pipe.
-
- --qq[_r_e_v] quiet mode; diagnostics are not printed.
-
- --dd_d_a_t_e retrieves the latest revision on the selected
- branch whose checkin date/time is less than or
- equal to _d_a_t_e. The date and time may be given in
- free format and are converted to local time.
- Examples of formats for _d_a_t_e:
-
- _2_2-_A_p_r_i_l-_1_9_8_2, _1_7:_2_0-_C_D_T,
- _2:_2_5 _A_M, _D_e_c. _2_9, _1_9_8_3,
- _T_u_e-_P_D_T, _1_9_8_1, _4_p_m _J_u_l _2_1 (free format),
- _F_r_i, _A_p_r_i_l _1_6 _1_5:_5_2:_2_5 _E_S_T _1_9_8_2 (output of ctime).
-
- Most fields in the date and time may be
- defaulted. _C_o determines the defaults in the
- order year, month, day, hour, minute, and second
- (most to least significant). At least one of
- these fields must be provided. For omitted fields
- that are of higher significance than the highest
- provided field, the current values are assumed.
- For all other omitted fields, the lowest possible
- values are assumed. For example, the date "20,
- 10:30" defaults to 10:30:00 of the 20th of the
- current month and current year. The date/time
- must be quoted if it contains spaces.
-
- --rr[_r_e_v] retrieves the latest revision whose number is
- less than or equal to _r_e_v. If _r_e_v indicates a
- branch rather than a revision, the latest revi-
- sion on that branch is retrieved. _R_e_v is com-
- posed of one or more numeric or symbolic fields
- separated by `.'. The numeric equivalent of a
- symbolic field is specified with the --nn option of
-
-
-
- Purdue University 6/29/83 2
-
-
-
-
-
-
- CO User Commands CO
-
-
-
- the commands _c_i and _r_c_s.
-
- --ss_s_t_a_t_e retrieves the latest revision on the selected
- branch whose state is set to _s_t_a_t_e.
-
- --ww[_l_o_g_i_n] retrieves the latest revision on the selected
- branch which was checked in by the user with
- login name _l_o_g_i_n. If the argument _l_o_g_i_n is omit-
- ted, the caller's login is assumed.
-
- --jj_j_o_i_n_l_i_s_t generates a new revision which is the join of the
- revisions on _j_o_i_n_l_i_s_t. _J_o_i_n_l_i_s_t is a comma-
- separated list of pairs of the form _r_e_v_2:_r_e_v_3,
- where _r_e_v_2 and _r_e_v_3 are (symbolic or numeric)
- revision numbers. For the initial such pair,
- _r_e_v_1 denotes the revision selected by the options
- --ll, ..., --ww. For all other pairs, _r_e_v_1 denotes
- the revision generated by the previous pair.
- (Thus, the output of one join becomes the input
- to the next.)
-
- For each pair, _c_o joins revisions _r_e_v_1 and _r_e_v_3
- with respect to _r_e_v_2. This means that all
- changes that transform _r_e_v_2 into _r_e_v_1 are applied
- to a copy of _r_e_v_3. This is particularly useful
- if _r_e_v_1 and _r_e_v_3 are the ends of two branches
- that have _r_e_v_2 as a common ancestor. If _r_e_v_1 <
- _r_e_v_2 < _r_e_v_3 on the same branch, joining generates
- a new revision which is like _r_e_v_3, but with all
- changes that lead from _r_e_v_1 to _r_e_v_2 undone. If
- changes from _r_e_v_2 to _r_e_v_1 overlap with changes
- from _r_e_v_2 to _r_e_v_3, _c_o prints a warning and
- includes the overlapping sections, delimited by
- the lines <<<<<<< _r_e_v_1, =======, and
- >>>>>>> _r_e_v_3.
-
- For the initial pair, _r_e_v_2 may be omitted. The
- default is the common ancestor. If any of the
- arguments indicate branches, the latest revisions
- on those branches are assumed. If the option --ll
- is present, the initial _r_e_v_1 is locked.
-
- KKEEYYWWOORRDD SSUUBBSSTTIITTUUTTIIOONN
- Strings of the form $_k_e_y_w_o_r_d$ and $_k_e_y_w_o_r_d:...$ embedded in
- the text are replaced with strings of the form
- $_k_e_y_w_o_r_d: _v_a_l_u_e $, where _k_e_y_w_o_r_d and _v_a_l_u_e are pairs listed
- below. Keywords may be embedded in literal strings or com-
- ments to identify a revision.
-
- Initially, the user enters strings of the form $_k_e_y_w_o_r_d$.
- On checkout, _c_o replaces these strings with strings of the
- form $_k_e_y_w_o_r_d: _v_a_l_u_e $. If a revision containing strings of
-
-
-
- Purdue University 6/29/83 3
-
-
-
-
-
-
- CO User Commands CO
-
-
-
- the latter form is checked back in, the value fields will be
- replaced during the next checkout. Thus, the keyword values
- are automatically updated on checkout.
-
- Keywords and their corresponding values:
-
- $Author$ The login name of the user who checked in the
- revision.
-
- $Date$ The date and time the revision was checked in.
-
- $Header$ A standard header containing the RCS file name,
- the revision number, the date, the author, and
- the state.
-
- $Locker$ The login name of the user who locked the revi-
- sion (empty if not locked).
-
- $Log$ The log message supplied during checkin, pre-
- ceded by a header containing the RCS file name,
- the revision number, the author, and the date.
- Existing log messages are NOT replaced.
- Instead, the new log message is inserted after
- $_L_o_g:...$. This is useful for accumulating a
- complete change log in a source file.
-
- $Revision$ The revision number assigned to the revision.
-
- $Source$ The full pathname of the RCS file.
-
- $State$ The state assigned to the revision with _r_c_s -_s
- or _c_i -_s.
-
- DDIIAAGGNNOOSSTTIICCSS
- The RCS file name, the working file name, and the revision
- number retrieved are written to the diagnostic output. The
- exit status always refers to the last file checked out, and
- is 0 if the operation was successful, 1 otherwise.
-
- EEXXAAMMPPLLEESS
- Suppose the current directory contains a subdirectory `RCS'
- with an RCS file `io.c,v'. Then all of the following com-
- mands retrieve the latest revision from `RCS/io.c,v' and
- store it into `io.c'.
-
- co io.c; co RCS/io.c,v; co io.c,v;
- co io.c RCS/io.c,v; co io.c io.c,v;
- co RCS/io.c,v io.c; co io.c,v io.c;
-
- FFIILLEE MMOODDEESS
- The working file inherits the read and execute permissions
- from the RCS file. In addition, the owner write permission
-
-
-
- Purdue University 6/29/83 4
-
-
-
-
-
-
- CO User Commands CO
-
-
-
- is turned on, unless the file is checked out unlocked and
- locking is set to _s_t_r_i_c_t (see _r_c_s (1)).
-
- If a file with the name of the working file exists already
- and has write permission, _c_o aborts the checkout if --qq is
- given, or asks whether to abort if --qq is not given. If the
- existing working file is not writable, it is deleted before
- the checkout.
-
- FFIILLEESS
- The caller of the command must have write permission in the
- working directory, read permission for the RCS file, and
- either read permission (for reading) or read/write permis-
- sion (for locking) in the directory which contains the RCS
- file.
-
- A number of temporary files are created. A semaphore file
- is created in the directory of the RCS file to prevent
- simultaneous update.
-
- IIDDEENNTTIIFFIICCAATTIIOONN
- Author: Walter F. Tichy, Purdue University, West Lafayette,
- IN, 47907.
- Revision Number: 3.1 ; Release Date: 83/04/04 .
- Copyright (C) 1982 by Walter F. Tichy.
-
- SSEEEE AALLSSOO
- ci (1), ident(1), rcs (1), rcsdiff (1), rcsintro (1),
- rcsmerge (1), rlog (1), rcsfile (5), sccstorcs (8).
- Walter F. Tichy, "Design, Implementation, and Evaluation of
- a Revision Control System," in _P_r_o_c_e_e_d_i_n_g_s _o_f _t_h_e _6_t_h _I_n_t_e_r_-
- _n_a_t_i_o_n_a_l _C_o_n_f_e_r_e_n_c_e _o_n _S_o_f_t_w_a_r_e _E_n_g_i_n_e_e_r_i_n_g, IEEE, Tokyo,
- Sept. 1982.
-
- LLIIMMIITTAATTIIOONNSS
- The option --dd gets confused in some circumstances, and
- accepts no date before 1970. There is no way to suppress
- the expansion of keywords, except by writing them dif-
- ferently. In nroff and troff, this is done by embedding the
- null-character `\&' into the keyword.
-
- BBUUGGSS
- The option --jj does not work for files that contain lines
- with a single `.'.
-
-
-
-
-
-
-
-
-
-
-
- Purdue University 6/29/83 5
-
-
-
-